// index.js
// 获取应用实例
const app = getApp()

Page({

  /**
   * 页面的初始数据
   */
  data: {
    djshu: 4,//树的等级1，2，3，4
    tree: false,
    waterbool: false,
    animation: true,
    shutree: false,
    bottle: false,
    marquee: {
      width: 5,
      text: '向幼苗浇水，帮助其茁壮成长吧！'
    },

    //最大水滴  (满额)
    water_drop_max: 600,
    //每次浇水雨滴数量  (最小浇水数)
    watering_sum: 100,
    //当前雨滴数量
    water: 600,

    //当前水滴（已浇）
    waternum: 0,
    //进度百分比
    water_drop_percentage: 0,

    //各等级数据
    grade: [0.1, 0.3, 0.5, 1],

    //记录签到的时间
    date: "1970-01-01",

    //扫描后显示的图片和文字
    modalHidden: true,

    //点击商城图标后显示前往商城的提示框
    shopHidden: true
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /** 动画部分 **/
  treeend() {//树动画结束

    console.log('xxxxxxxxxxx')
    this.setData({
      tree: false,
      shutree: false,
      animation: true,
    })
    let num = this.data.waternum
    if (num === this.data.water_drop_max) {
      wx.showToast({
        title: '你已完成任务',
      })
      return false
    }
    this.setData({
      waternum: this.data.waternum += this.data.watering_sum,
      water: this.data.water - this.data.watering_sum
    })
    this.setWaterDropPercentage();
  },
  // before() {
  //   wx.navigateBack({
  //     delta: 1,
  //   })
  // },
  /** 被动动画水壶  函数 */
  bottlestart() {//水滴动画开始前
    this.setData({
      bottle: true
    })
  },
  bottleend() {//水滴动画结束
    this.setData({
      bottle: false,
      tree: false,
      waterbool: true,
    })
    setTimeout(() => {
      this.setData({
        shutree: true,
        waterbool: false,
      })
    }, 500)
  },

  /** 主动浇水 */
  animation() {//动画事件启动
    let animation = this.data.animation
    if (animation) {
      this.setData({
        animation: false,
        tree: true
      })
    } else {
      return false
    }
  },
  /** 动画END **/

  /** 跳转页面 **/
  answer() {
    wx.navigateTo({
      url: '/pages/paper/paper',
    })
  },
  // 签到
  tosign() {
    let oldDate = new Date(this.data.date.replace(/-/g, "/"))
    let nowDate = new Date(new Date().toLocaleDateString().replace(/-/g, "/"))
    if (parseInt((nowDate.getTime() - oldDate.getTime()) / (1000 * 60 * 60 * 24)) >= 1) {
      wx.showToast({
        title: '领取100g水滴',
      }),
        this.setData({
          water: this.data.water + this.data.watering_sum,
          date: new Date().toLocaleDateString()
        })
    } else {
      wx.showToast({
        title: '今天已签到',
      })
    }
  },

  // 扫描
  /**
  * 显示弹窗
  */
  saomiao() {
    this.setData({
      modalHidden: false
    })
  },
  /**
 * 点击取消
 */
  modalCandel: function () {
    // do something
    this.setData({
      modalHidden: true
    })
  },

  /**
   *  点击确认
   */
  modalConfirm: function () {
    // do something
    this.setData({
      modalHidden: true
    })
  },

  // 跳转商城
  goShop() {
    this.setData({
      shopHidden: false
    }),
      wx.showModal({
        title: '提示',
        content: '前往商店去购买心仪的商品吧！',
        success: function (res) {
          if (res.confirm) {//这里是点击了确定以后    
            wx.switchTab({
              url: '/pages/category/category',
            })
          } else {//这里是点击了取消以后          
            console.log('用户点击取消')
          }
        }
      })
  },
  /** 跳转END **/

  //结算
  settlement() {

  },

  //设置进度条百分比
  setWaterDropPercentage() {

    //进度百分比
    let percentage = (Math.floor((this.data.waternum / this.data.water_drop_max) * 100) / 100) * 100;
    if (percentage >= 100) percentage = 100;

    //树等级判断
    let n = 4;
    let division = n * (n + 1) * (2 * n + 1) / 6;

    console.log('总分层：' + division);

    let mj = this.data.water_drop_max / 30;
    console.log('每级能量：' + mj);

    let cs = this.data.waternum / mj;
    console.log('当前层数：' + cs);

    let dj = Math.sqrt(cs);
    console.log('当前等级：' + dj);

    for (let i = 1; i <= n; i++) {
      console.log('等级' + i + '的能量需求是：' + Math.pow(i, 2) * mj);
    }

    this.setData({
      water_drop_percentage: percentage
    })

  },
  //浇水
  watering() {

  },
})